﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SharpShare.Storage {
    public interface IStorageDataProvider {
        long Length { get; }

        StorageFileAccess AccessMode { get; }

        int Read(long position, byte[] buffer, int offset, int length);

        void Write(long position, byte[] buffer, int offset, int length);

        void SetLength(long length);

        void Flush(bool synchronize = false);

        void Close();
    }
}
